//package cn.bonoon.kernel.security;
//
//import java.util.Collections;
//import java.util.List;
//
//import cn.bonoon.kernel.web.menus.ChannelInfo;
//import cn.bonoon.kernel.web.menus.ItemInfo;
//import cn.bonoon.kernel.web.menus.ModuleInfo;
//import cn.bonoon.kernel.web.menus.UrlRequest;
//
//public interface PrivilegeHandler {
//
//	public final static PrivilegeHandler ALL = new PrivilegeHandler() {
//
//		@Override
//		public boolean isEmpty() {
//			return false;
//		}
//
//		@Override
//		public boolean hasPrivilege(ItemInfo menu) {
//			return true;
//		}
//
//		@Override
//		public boolean hasPrivilege(ChannelInfo channel) {
//			return true;
//		}
//
//		@Override
//		public MenuPrivilege getMenu(String id) {
//			return null;
//		}
//
//		@Override
//		public boolean hasPrivilege(UrlRequest para, String key) {
//			return true;
//		}
//
//		@Override
//		public List<String> menuList(ModuleInfo module) {
//			return Collections.emptyList();
//		}
//
//		@Override
//		public List<String> menuList(ChannelInfo channel) {
//			return Collections.emptyList();
//		}
//
//		@Override
//		public boolean hasPrivilege(UrlRequest request) {
//			return true;
//		}
//	};
//
//	boolean isEmpty();
//
//	/**
//	 * 判断一个菜单的权限
//	 * 
//	 * @param menu
//	 * @return
//	 */
//	boolean hasPrivilege(ItemInfo menu);
//
//	/**
//	 * 判断一个频道的权限
//	 * 
//	 * @param channel
//	 * @return
//	 */
//	boolean hasPrivilege(ChannelInfo channel);
//
//	/**
//	 * 判断一个菜单的操作的权限
//	 * 
//	 * @param para
//	 * @param key
//	 * @return
//	 */
//	boolean hasPrivilege(UrlRequest para, String key);
//
//	List<String> menuList(ModuleInfo module);
//
//	List<String> menuList(ChannelInfo channel);
//
//	MenuPrivilege getMenu(String id);
//
//	boolean hasPrivilege(UrlRequest request);
//}
